/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package cz.muni.fi.PA165.musiclibraryapi.dto;

/**
 * This interface allows to manipulate with songs on service layer.
 * 
 * @author Dominik
 */
public interface SongDTOInterface {
    
    /**
     * Returns song name
     * 
     * @return song name
     */
    public String getName();

    /**
     * Sets song name
     * 
     * @param name
     */
    public void setName(String name);
    
    /**
     * Returns song id
     * 
     * @return song id
     */
    public Long getId();

    /**
     * Sets song id
     * 
     * @param id
     */
    public void setId(Long id);   

    /**
     * Returns song bitrate
     * 
     * @return
     */
    public int getBitrate();

    /**
     * Sets song bitrate
     * 
     * @param bitrate
     */
    public void setBitrate(int bitrate);

    /**
     * Returns order of song on album
     * 
     * @return order of song
     */
    public int getSongOrder();

    /**
     * Sets order of song on album
     * 
     * @param songOrder
     */
    public void setSongOrder(int songOrder);

    /**
     * Returns song comment
     * 
     * @return song comment
     */
    public String getComment();

    /**
     * Sets song comment
     * 
     * @param comment
     */
    public void setComment(String comment);

    /**
     * Returns author of song
     * 
     * @return author of song
     */
    public AuthorDTOInterface getAuthor();

    /**
     * Sets author of song
     * 
     * @param authorId
     */
    public void setAuthor(AuthorDTOInterface authorId);

    /**
     * Returns genre of song
     * 
     * @return genre of song
     */
    public GenreDTOInterface getGenre();

    /**
     * Sets genre of song
     * 
     * @param genreId
     */
    public void setGenre(GenreDTOInterface genreId);

    /**
     * Returns album of song
     * 
     * @return album of song
     */
    public AlbumDTOInterface getAlbum();

    /**
     * Sets album of song
     * 
     * @param albumId
     */
    public void setAlbum(AlbumDTOInterface albumId);     
}
